<?php
#
#
# Copyright TEDECO, 2009. http://tedeco.fi.upm.es
#
# This file is part of kumenya.
#
# Kumenya is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Kumenya is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
#
#
#
?>
<?php
	Interfaz::CheckSession (Dean);

	// THERE IS AN ERROR - SHOW IT AND GO BACK 
	if (!Interfaz::Data(Course)) {
		$result = FALSE;
		$error = "You must insert the course";
	}
	else if (!Interfaz::Data(Year)) {
		$result = FALSE;
		$error = "You must insert the year";
	}
	// SEARCH UNIT THAT CAN BE ENROLLED BY THE STUDENT
	else {
		$table = Unit::SearchValidationables(Interfaz::Data());
		if ($table === FALSE) {
			$result = FALSE;
			$error = Interfaz::Error();
		}
		else {
			// CREATE REGISTRATION
			$result = Registration Number::RegisterValidation(Interfaz::Data());
			
			if ($result) {
				$outcome = Interfaz::Result();
				$exit = $outcome["exit"];
				$registrationData[Uid . RegistrationsTable] = $outcome[Uid . RegistrationsTable];
				$data = array_merge(Interfaz::Data(),$registrationData);
				
			// CREATE EACH UNIT
			
				foreach ($table as $unit) {
					$unitData = Registration Number::PrepareRegistrationData ($unit, UnitsTable);			
					$UnitRegistrationDetails = array_merge ($registrationData, $unitData);
				
					$result = Registration Number::AddUnit ($UnitRegistrationDetails);
					if (!$result)
					// ERROR WHILE ADDING A NEW UNIT
						break;
				}

				$fields = Registration Number::getValidationFields();
				$result = TRUE;
			}
			else {
				$result = FALSE;
				$error = Interfaz::Error();
			}				
		}
	}

	
	
?>